]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
objectManager: clear inhibitor on unregistered interfaces
authorRay Strode <rstrode@redhat.com>
Wed, 21 Aug 2013 22:00:40 +0000 (18:00 -0400)
committerRay Strode <rstrode@redhat.com>
Thu, 22 Aug 2013 13:38:15 +0000 (09:38 -0400)
A D-Bus service can export more supported interfaces than the
shell cares about.  In those cases, we avoid creating proxies,
but neglect to finish things up so the object manager class
knows it can mark itself loaded.

This commit makes sure we do the proper finishing, so the object
manager still loads in the face of unsupported interfaces.

https://bugzilla.gnome.org/show_bug.cgi?id=706542

js/misc/objectManager.js

index b954f1bee274dc216cb6ddd0d471b49247e2907a..f7265fe708abec2e627d2697b26bf09b187f3963 100644 (file)
@@ -73,8 +73,11 @@ const ObjectManager = new Lang.Class({
     _addInterface: function(objectPath, interfaceName, onFinished) {
            let info = this._interfaceInfos[interfaceName];
 
-           if (!info)
+           if (!info) {
+               if (onFinished)
+                   onFinished();
                return;
+           }
 
            let proxy = new Gio.DBusProxy({ g_connection: this._connection,
                                            g_name: this._serviceName,